'''

封装:保证数据安全 -> 私有化 属性和函数只能被自己调用 不会被外部调用
    属性封装:在定义属性时使用__定义 只能在类内部调用或修改 外部需要公有函数简间接操作
    函数封装:在定义函数时使用__函数定义 只能在类内部调用或修改 外部需要公有函数简间接调用

继承:
    子类可以继承父类 父类的所有的公有属性和函数都会被子类继承

'''

class Orders():
    def __init__(self,oid,price):
        self.__oid=oid
        self.__price=price

    def getOid(self):
        return self.__oid

    def getPrice(self):
        return self.__price

    def setOid(self,oid):
        self.__oid=oid

    def setPrice(self,price):
        self.__price=price

    def __test(self):
        print("测试")

    def callTest(self):
        self.__test()

class Father():
    father="父类"

    def __init__(self,fathername,fatherage):
        self.fathername=fathername
        self.fatherage=fatherage

    def work(self):
        print("工作")

    def __kanbin(self):
        print("kanbin")

class Son(Father):
    Son = "儿子"

    def __init__(self,name,age,fathername,fatherage):
        self.name=name
        self.age=age
        super().__init__(fathername,fatherage)



if __name__ == '__main__':
    orders=Orders(1,100)
    print(orders.getOid())
    print(orders.getPrice())

    orders.callTest()

    son = Son("儿子",21,"父亲",50)
    print(son.father)
    print(son.name)
    print(son.age)
    print(Son.Son)
    print(son.fathername)
    print(son.fatherage)
    son.work()